{\rtf1\ansi\ansicpg1252\cocoartf949\cocoasubrtf270
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\paperw11900\paperh16840\margl1440\margr1440\vieww15500\viewh12020\viewkind0
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural

\f0\fs24 \cf0 RAM:\
00: direct page y zero page viven aca\
01: \
02-7f: RAM com\'fan\
E0: Compatibilidad con IIe, I/O en C000. ROM set toma de FFD000. Se hace shadowing con direct page y zero page\
E1: Compatibilidad con IIe, superhires en E12000 a E19FFF\
FE: ROM\
FF: ROM\
\
I/O: Se mapea de 00/C000-CFFF a FF/C000-CFFF\
\
IIGS Registers:\
C021 Monochrome register (only NTSC output, not RGB)\
C022 Screen color register (color code is from lores graphics)\
C023 VGC Interrupt status and enable byte\
C024 Mouse data register\
C025 Key modifier register\
C026 ADB Command/Data Register\
C027 ADB Status Register\
C028 ROM bank toggle. Not used in IIgs. Does it map FF9000-FFBFFF to D000-FFFF?\
C029 New video register\
C02A Reserved\
C02B Foreign language selection (bit 7-5, bit 4: PAL, bit 3: 1 same as previous language, 0: USA)\
C02C Test mode read of character ROM\
C02D Slot register\
C02E Vertical video address / 2. in NTSC: $fa to $1ff\
C02F Horizontal video address in bit 6-0, bit 7: lsb of vertical address. horiz address in ntsc: 40 to 7f, 00\
C031 Disk interface register\
C032 Clear scan interrupt: Bit 6: clears 1 second interrupt. Bit 5: Clears scanline interrupt\
C033 RTC Data\
C034 RTC Control/Border color register\
C035 Shadow register\
C036 Speed register\
C037 DMA Bank address register\
C038 SCC B Command\
C039 SCC A Command\
C03A SCC B Data\
C03B SCC A Data\
C03C Sound control register\
C03D Sound data register\
C03E Sound address low\
C03F Sound address high\
C041 Interrupt register\
C044 Mouse delta X\
C045 Mouse delta Y\
C046 Diagnostic flags:  Bit 7 is set, burn-in diagnostics. Bit 7 cleared, self-diagnostics.\
C047 VBL Interrupt - Clear VBL interrupt flags\
C048 XY Interrupt - Clear Mega II Mouse interrupt flags\
C04F Emulator register. Write once, read twice. First byte, emulator. Second, version. Us, $A2\
C068 State register (R/W)\
C06D test mode bit register\
C06E clear test mode\
C06F set test mode\
C071 ROM Interrupt jump table\
\
Shadow register C035:\
Bit 7: Do not modify\
Bit 6: Inhibit Language card + I/O shadowing (C000-CFFF)\
Bit:5: Inhibit shadowing text page 2\
Bit 4: Inhibit Aux hires pages\
Bit 3: Inhibit Super hires graphics\
Bit 2: Inhibit Hires page 2\
Bit 1: Inhibit Hires page 1\
Bit 0: Inhibit Text page 1\
\
Speed register C036:\
Bit 3, 2, 1, 0: disk motor-on detect for slots 7,6,5,4\
Bit 4: Shadowing enabled, all RAM banks (if cleared, only on banks 00 and 01)\
Bit 5: Do not modify\
Bit 6: Power-on status (1 when system is turned on with the power switch)\
Bit 7: CPU speed\
\
State register C068:\
Bit 7: ALT ZP\
Bit 6: Page 2\
Bit 5: Ram Read\
Bit 4: Ram Write\
Bit 3: Read ROM\
Bit 2: LC Bank 2\
Bit 1: ROMBANK\
Bit 0: IntCXROM\
\
Read DHIRES C046:\
Read annunciator 3\
\
Screen color register C022:\
Bit 7-4: Text color\
Bit 3-0: Background color\
\
Border color register C034:\
Bit 7-4: Real time clock\
Bit 3-0: Border color\
\
Color register C021:\
Bit 7: Monochrome\
Other bits: do not modify\
\
New video register C029:\
Bit 7: override superhires\
Bit 6: enable superhires\
Bit 5: double hires is monochrome\
Bit 4-1: do not modify\
Bit 0: Enable bank latch. Use 17th address bit to select main or auxiliary memory\
\
Scan line control 9d00-9dc7 format:\
Bit 7: 640 pixel resolution\
Bit 6: Interrupt enable for this scan line\
Bit 5: color fill enable (only 320 pixel format). pixels with value 0 replicate the last pixel\
Bit 4: 0\
Bit 0-3: Palette for this scan line\
 \
Color palettes 9e00-9ffff format:\
Even byte:\
Bit7-4: Green\
Bit3-0: Blue\
\
Odd byte:\
Bit 7-4: Do not modify\
Bit 3-0: Red\
\
Sound control register C03C:\
Bit 7: DOC busy\
Bit 6: DOC or RAM access\
Bit 5: Address pointer auto-increment\
Bit 4: Do not modify\
Bit 3-0: Volume\
\
Sound data register C03D\
Sound address pointer register C03E and C03F\
\
ADB Command/Data register C026:\
Bit 7: Response/status\
Bit 6: Abort/CTRLSTB flash\
Bit 5: Reset key\
Bit 4: Buffer flush key\
Bit 3: Service request valid\
Bit 2-0: Number of data bytes returned\
\
Modifier Key Register C025:\
Bit 7: Command key pressed\
Bit 6: Option key pressed\
Bit 5: Key latch updated (not necessarily key pressed)\
Bit 4: Numeric keypad key pressed\
Bit 3: key is being held down\
Bit 2: Caps lock pressed\
Bit 1: Control pressed\
Bit 0: Shift pressed\
\
Mouse Data Register C024:\
First read, Y. Second read, X.\
Bit 7: Current button status\
Bit 6: Delta movement sign bit\
\
ADB Status Register C027:\
Bit 7: Mouse data register full\
Bit 6: Mouse interrupt enable\
Bit 5: Data register full\
Bit 4: Data interrupt enable\
Bit 3: Keyboard data register full\
Bit 2: Keyboard interrupt enable\
Bit 1: Mouse X and Y registers available\
Bit 0: Command register full\
\
Disk interface register C031:\
Bit 7: Read/write head select\
Bit 6: Disk drive select (1: select 3.5" drive)\
Bit 5-0: Do not modify\
\
Disk access:\
C0E0-C0EF\
\
Serial Communications Controller Command C038\
Serial Communications Controller Data C03A\
\
Real time clock data C033\
Real time clock control C034:\
Bit 7: Start\
Bit 6: Read/Write\
Bit 5: Last byte\
Bit 4-0: Do not modify\
\
Slot register C02D:\
Bit 7: Slot 7 device select\
..\
Bit 1: Slot 1 device select\
Bit 0: Do not modify\
\
Internal slot 7: AppleTalk\
Internal slot 6: 5.25" disk drive\
Internal slot 5: 3.5" disk drive\
Internal slot 4: Mouse\
Internal slot 2: Serial port\
Internal slot 1: Printer port\
}